package com.dragon.mmochat.model.enumType;

//注：一旦发版,如果此enum会存到数据库，则此类型只能增加,不能减少或修改名字
public enum MmochatEquipAttributeType {
	力量(1, "liliang", 125, "力量", ""), 灵力(2, "linli", 125, "灵力", ""), 体质(3, "tz",
			125, "体质", ""), 敏捷(4, "mj", 125, "敏捷", ""), 全属性(5, "qsx", 83,
			"所有属性", ""), 野蛮(6, "ym", 67, "野蛮", ""), 智慧(7, "zh", 67, "智慧", ""), 坚韧(
			8, "jr", 67, "坚韧", ""), 活力(9, "hl", 67, "活力", ""), 灵巧(10, "lq", 67,
			"灵巧", ""), 全天赋(11, "qtf", 33, "所有天赋", ""), 伤害(12, "sh", 100, "伤害",
			""), 物伤(13, "ws", 100, "物伤", ""), 法伤(14, "fs", 100, "法伤", ""), 防御(
			15, "fy", 100, "防御", ""), 气血(16, "qx", 100, "气血", ""), 法力(17, "fl",
			100, "法力", ""), 速度(18, "sd", 100, "速度", ""), 物理暴击(19, "wlbj", 91,
			"物理暴击机率", "%"), 法术暴击(20, "fsbj", 91, "法术暴击机率", "%"), 物理暴击抵抗(21,
			"wlbjdk", 91, "物理暴击抵抗", "%"), 法术暴击抵抗(22, "fsbjdk", 91, "法术暴击抵抗",
			"%"), 物理致命一击(23, "wlzmyj", 83, "物理致命一击", "%"), 法术致命一击(24, "fszmyj",
			83, "法术致命一击", "%"), 物理致命抵抗(25, "wlzmdk", 83, "物理致命抵抗", "%"), 法术致命抵抗(
			26, "fszmdk", 83, "法术致命抵抗", "%"), 物伤加成(27, "wsjc", 83, "物伤加成", "%"), 法伤加成(
			28, "fsjc", 83, "法伤加成", "%"), 物防加成(29, "wfjc", 83, "物防加成", "%"), 法防加成(
			30, "ffjc", 83, "法防加成", "%"), 物理破防(31, "wlpf", 50, "物理破防机率", "%"), 法术破防(
			32, "fspf", 50, "法术破防机率", "%"), 物理闪避(33, "wlsb", 100, "物理闪避机率", "%"), 法术闪避(
			34, "fssb", 100, "法术闪避机率", "%"), 封印抵抗(35, "fydk", 91, "封印抵抗", "%"), 冰冻抵抗(
			36, "bddk", 91, "冰冻抵抗", "%"), 混乱抵抗(37, "hrdk", 91, "混乱抵抗", "%"), 全异常抵抗(
			38, "qycdk", 45, "全异常抵抗", "%"), 忽视封印抵抗(39, "hsfydk", 83, "忽视封印抵抗",
			"%"), 忽视冰冻抵抗(40, "hsbddk", 83, "忽视冰冻抵抗", "%"), 忽视混乱抵抗(41, "hshrdk",
			83, "忽视混乱抵抗", "%"), 忽视全异常抵抗(42, "hsqycdk", 42, "忽视全异常抵抗", "%"), 强化封印(
			43, "qhfy", 67, "强化封印", "%"), 强化冰冻(44, "qhbd", 67, "强化冰冻", "%"), 强化混乱(
			45, "qhhr", 67, "强化混乱", "%"), 强化全异常(46, "qhqyc", 33, "强化全异常", "%"), 抗雷(
			47, "kl", 91, "抗雷系法术", "%"), 抗水(48, "ks", 91, "抗水系法术", "%"), 抗毒(49,
			"kd", 91, "抗毒系法术", "%"), 忽视抗雷(50, "hskl", 83, "忽视抗雷系法术", "%"), 忽视抗水(
			51, "hsks", 83, "忽视抗水系法术", "%"), 忽视抗毒(52, "hskd", 83, "忽视抗毒系法术",
			"%"), 物理免疫(53, "wlmy", 33, "所受物理伤害减少", "%"), 法术免疫(54, "fsmy", 33,
			"所受法术伤害减少", "%"), 神圣物理伤害(55, "sswlsh", 33, "神圣物理伤害", "%"), 神圣法术伤害(
			56, "ssfssh", 33, "神圣法术伤害", "%"), 免伤(57, "ms", 33, "所受伤害减少", "%"), 雷系法攻加成(
			58, "lxfg", 33, "雷系法攻加成", "%"), 水系法攻加成(59, "sxfg", 33, "水系法攻加成",
			"%"), 毒系法攻加成(60, "dxfg", 33, "毒系法攻加成", "%"), 气血加成(61, "qxjc", 33,
			"气血上限加成", "%"), 法力加成(62, "fljc", 33, "法力上限加成", "%"), 速度加成(63,
			"sdjc", 33, "速度加成", "%"),

	无视伤害(100, "wssh", 33, "", "%机率不受伤害"), 人物复活(101, "rwfh", 33, "角色", "%机率复活"), 人物回血(
			102, "rwhx", 33, "角色每回合", "%机率回血"), 人物回蓝(103, "rwhl", 33, "角色每回合",
			"%机率回法"), 宠物回血(104, "cwhx", 33, "宠物每回合", "%机率回血"), 宠物回蓝(105,
			"cwhl", 33, "宠物每回合", "%机率回法"),

	法术目标增加(106, "fsmbzj", 33, "", "%机率法术目标数+1"), 障碍目标增加(107, "zambzj", 33, "",
			"%机率障碍目标数+1"), 辅助目标增加(108, "fzmbzj", 33, "", "%机率辅助目标数+1"),

	物伤高倍(109, "wsgb", 33, "", "%机率物伤2.5倍"),

	解除封印(110, "jcfy", 33, "", "%机率解除封印"), 解除混乱(111, "jchr", 33, "", "%机率解除混乱"), 解除冰冻(
			112, "jcbd", 33, "", "%机率解除冰冻");

	int value;
	String shortName; // 短名称
	int prority;
	String startInfo; // 前半部分信息
	String endInfo; // 后半部分信息

	MmochatEquipAttributeType(int value, String shortName, int prority,
			String startInfo, String endInfo) {
		this.value = value;
		this.shortName = shortName;
		this.prority = prority;
		this.startInfo = startInfo;
		this.endInfo = endInfo;
	}

	public int getPrority() {
		return prority;
	}

	public String getStartInfo() {
		return startInfo;
	}

	public String getEndInfo() {
		return endInfo;
	}

	public String getShortName() {
		return shortName;
	}

	public int getValue() {
		return value;
	}

	public static MmochatEquipAttributeType getEquipAttributeTypeByShortName(
			String sName) {
		for (MmochatEquipAttributeType type : MmochatEquipAttributeType
				.values()) {
			if (type.getShortName().equals(sName)) {
				return type;
			}
		}
		return null;
	}

	public static MmochatEquipAttributeType get(int v) {
		for (MmochatEquipAttributeType type : MmochatEquipAttributeType
				.values()) {
			if (type.getValue() == v) {
				return type;
			}
		}
		return null;
	}

}
